package com.dys.ai.common.dto;

import com.fasterxml.jackson.annotation.JsonFormat;

import java.math.BigDecimal;
import java.time.LocalTime;

/**
 * 车次信息
 */
public class TrainDTO {
    /**
     * 车次ID
     */
    private Long id;

    /**
     * 列车编号
     */
    private String trainNumber;

    /**
     * 出发城市
     */
    private String departureStation;

    /**
     * 目标城市
     */
    private String arrivalStation;

    /**
     * 出发时间
     */
    @JsonFormat(pattern = "HH:mm:ss")
    private LocalTime departureTime;

    /**
     * 到达时间
     */
    @JsonFormat(pattern = "HH:mm:ss")
    private LocalTime arrivalTime;

    /**
     * 票价（使用 BigDecimal 避免精度问题）
     */
    private BigDecimal price;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getTrainNumber() {
        return trainNumber;
    }

    public void setTrainNumber(String trainNumber) {
        this.trainNumber = trainNumber;
    }

    public String getDepartureStation() {
        return departureStation;
    }

    public void setDepartureStation(String departureStation) {
        this.departureStation = departureStation;
    }

    public String getArrivalStation() {
        return arrivalStation;
    }

    public void setArrivalStation(String arrivalStation) {
        this.arrivalStation = arrivalStation;
    }

    public LocalTime getDepartureTime() {
        return departureTime;
    }

    public void setDepartureTime(LocalTime departureTime) {
        this.departureTime = departureTime;
    }

    public LocalTime getArrivalTime() {
        return arrivalTime;
    }

    public void setArrivalTime(LocalTime arrivalTime) {
        this.arrivalTime = arrivalTime;
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }
}
